// 将一个给定字符串 s 根据给定的行数 numRows ，以从上往下、从左到右进行 Z 字形排列。

// var convert = function(s, numRows) {
//     var arr = new Array(); //先声明一维
//     for (var k = 0; k < s; k++) {

//         arr[k] = new Array();

//         for (var j = 0; j < numRows.length; j++) {

//             arr[k][j] = "";
//         }
//     }
//     let flag = true;
//     let col = 0;
//     let row = 0;
//     let i = 0;
//     while (i < numRows.length) {
//         while (flag) {
//             if (row > s - 1) { break; }
//             arr[row][col] = numRows[i];
//             row++;
//             i++;
//         }
//         row--;
//         flag = false;
//         while (!flag) {
//             if (row < 0) { break; }
//             row--;
//             col++;
//             arr[row][col] = numRows[i];
//             i++;
//         }

//     }
//     console.log(arr)

// };
let string = "PAYPALISHIRING";
let convert = function(s, numRows) {
    if (s.length < numRows || numRows == 1) { return s }
    let arr = new Array(s.length).fill("");
    let flag = true;
    let num = 0;
    for (let i = 0; i < s.length; i++) {
        arr[num] += s[i];
        if (flag) { num++ }
        if (!flag) { num-- }
        if (num == 0) { flag = true }
        if (num == numRows - 1) { flag = false }
    }
    s = arr.join('');
    return s
}
console.log(convert(string, 3))